<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // let a= 12;
        // let b = 'a';

        // let s1 = Symbol();
        // let s2 = Symbol();
        // console.log(typeof a);
        // console.log(typeof b);
        // console.log(typeof s1); //symbol

        // console.log(s1);
        // console.log(s2);
        // console.log(s1===s2); //false

        // let s3 = Symbol('ok');
        // let s4 = Symbol('ok');

        // console.log(s3);
        // console.log(s4);

        // console.log(s3===s4); //false

        // // 想让symbol相等

        // let s5 = Symbol.for('ok');
        // let s6 = Symbol.for('ok');

        // console.log(s5);
        // console.log(s6);
        // console.log(s5===s6); //true



        // // 使用场景 - 
        // let obj = {
        //     name:"老王",
        //     // ....
        // }

        // // obj.name = '小已';

        // let s1 = Symbol('小已');

        // let s2 = Symbol('小已');

        // obj[s1] = '小已';

        // obj[s2] = '小丙';

        // console.log(obj);


        // console.log(obj[s1]);
        // console.log(obj[s2]);

        //  Symbol is not a constructor 
        // Symbol不能使用New调用
        // let s3 = new Symbol();

        // console.log(s3);


        // let s4 = Symbol(123);
        // // Cannot convert a Symbol value to a number
        // console.log(Number(s4));


        // let s5 = Symbol();
        // let obj2 = {
        //     a:666,
        //     [Symbol()]:'ok',
        //     [s5]:'lalala'
        // }

        // console.log(obj2[Symbol()]); //undefined

        // console.log(obj2[s5]); //lalala

        let s1 = Symbol('like');
        let s2 = Symbol('gf');

        let obj = {
            name:"老王",
            age:18,
            sex:"男",
            [s1]:["唱","跳","rap"],
            [s2]:["小花","小草","小王","老王"]
        }
        console.log(obj);
        // for in 
        for(let a in obj){
            console.log(a);
            console.log(obj[a]);
        }


        // Object.getOwnPropertySymbols
        // console.log(Object.getOwnPropertySymbols(obj));// []
        let arr = Object.getOwnPropertySymbols(obj);
        arr.forEach(item=>{
            // console.log(item);
          console.log(obj[item]);
        })






    </script>
</body>
</html>